#pragma once
#include <iostream>

class AbstractProductA {
public:
	virtual ~AbstractProductA(){}
	virtual std::string ProductA()const = 0;
};

class ProductA1 :public AbstractProductA {
public:
	std::string ProductA()const override;
};

class ProductA2 :public AbstractProductA {
public:
	std::string ProductA()const override;
};

class ProductA3 :public AbstractProductA {
public:
	std::string ProductA()const override;
};